Client devices that require Internet Protocol (IP) addresses typically use an addressing protocol such as Dynamic Host Configuration Protocol (DHCP). When a client first enters a network, it sends a broadcast request for an address; this request is referred to as a DISCOVER message. The router sends the DISCOVER message to a DHCP server, which responds with an OFFER message that includes an address. The client sends a REQUEST to inform the server that the client intends to use the address. The server then sends an acknowledgement ACK message confirming that the client has that address for a specified period of time. Typically, all of these messages are broadcast messages, except possibly for the last one. Once the address is assigned, messages between the client and the DHCP server that may include requests to renew the lease on the address, etc., are unicast between the client and the server.
When a client enters a subnet of the network that does not have a DHCP server, a device on the subnet will typically have the capability to route the request to a different subnet upon which the DHCP server resides. The router that routes the request to a different subnet may be referred to as a DHCP relay or proxy agent. The proxy agent will generally impersonate the DHCP server to the client and the client to the DHCP server.
When using Virtual Routing and Forwarding (VRF) tables, issues may arise with the use of proxies. VRFs allow multiple instances of routing tables to exist in the same routing device and may be used to differentiate different sets of addresses, such as those associated with a particular customer on a wholesale network, or to allow management of portions of a network.
DHCP servers identify themselves to DHCP client via the DHCP server identifier option, which specifies the IP or other network address used by the server. In a typical proxy situation, the IP or other network address is used as the server identifier on the access interface on the router. This may require a proxy ARP (address resolution protocol) for resolving the address if the address assigned to a client or subscriber is not on the same subnet as the server identifier subnet. For VRFs, if the access interface resides in a different VRF than the subscriber interface, the IP address of the access interface would not be available in the VRF of the subscriber interface and therefore cannot be used as the server identifier. This may require separate access interfaces to be configured for each VRF, or all of the subscriber interfaces, access interfaces and server interface to be on the same VRF.